<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:bi="http://java.sun.com/jsf/composite/inward/bill"
      xmlns:bill="http://java.sun.com/jsf/composite/bill">

    <h:body>

        <ui:composition template="/resources/template/template.xhtml">

            <ui:define name="content">
                <h:form>
                    <p:panel header="Service Reprint" >
                        <h:panelGrid columns="2">
                            <p:panel>
                                <p:commandButton ajax="false" value="Cancel" 
                                                action="inward_cancel_bill_service"
                                                 disabled="#{inwardSearch.bill.cancelled or inwardSearch.bill.refunded }" onclick="onSubmitButton();" >                           
                                </p:commandButton>
                                <p:commandButton ajax="false" value="Return" actionListener="#{billSearch.recreateModel()}"
                                                action="inward_bill_service_refund"
                                                 disabled="#{inwardSearch.bill.cancelled}" onclick="onSubmitButton();" >    
                                    <f:setPropertyActionListener  value="#{inwardSearch.bill}" target="#{billSearch.bill}"  />
                                </p:commandButton>
                            </p:panel>
                            <p:panel>
                                <p:commandButton ajax="false" value="Mark As Checked"
                                                action="#{inwardSearch.markAsChecked()}"
                                                 rendered="#{webUserController.hasPrivilege('InwardCheck')}" onclick="onSubmitButton();" />
                                <p:commandButton ajax="false" value="Mark As Un Check"
                                                action="#{inwardSearch.markAsUnChecked()}"
                                                 rendered="#{webUserController.hasPrivilege('InwardUnCheck')}" onclick="onSubmitButton();" />
                                <p:commandButton ajax="false" value="Back To View" action="/inward/inward_edit_bill_item_view" onclick="onSubmitButton();" />
                                <p:commandButton ajax="false" value="Back To Intrim" action="/inward/inward_bill_intrim" 
                                                actionListener="#{bhtSummeryController.createTables()}"
                                                 onclick="onSubmitButton();" />
                            </p:panel>

                        </h:panelGrid>
                        <p:panel>
                            <p:panelGrid columns="2" style="width: 100%;">
                                <p:panel header="Patient Detail">
                                    <p:panelGrid columns="2">
                                        <h:outputLabel value="Patient ​Name:" ></h:outputLabel>
                                        <h:outputLabel value="#{inwardSearch.bill.patient.person.nameWithTitle }" ></h:outputLabel>
                                        <h:outputLabel value="Bht No:" ></h:outputLabel>
                                        <h:outputLabel value="#{inwardSearch.bill.patientEncounter.bhtNo }" ></h:outputLabel>
                                        <h:outputLabel value="Age" />
                                        <h:outputLabel value="#{inwardSearch.bill.patient.age}"  />
                                        <h:outputLabel value="Sex" >
                                        </h:outputLabel>
                                        <h:outputLabel value="#{inwardSearch.bill.patient.person.sex}" >
                                        </h:outputLabel>
                                        <h:outputLabel value="Phone" >
                                        </h:outputLabel>
                                        <h:outputLabel value="#{inwardSearch.bill.patient.person.phone}" >
                                        </h:outputLabel>
                                    </p:panelGrid>
                                </p:panel>
                                <p:panel header="Bill Detail">
                                    <p:panelGrid columns="2">
                                        <h:outputLabel value="Bill No :" ></h:outputLabel>
                                        <h:outputLabel value="#{inwardSearch.bill.insId}" ></h:outputLabel>
                                        <h:outputLabel value="Payment Type : " ></h:outputLabel>
                                        <h:outputLabel value="#{inwardSearch.bill.paymentMethod}" ></h:outputLabel>
                                        <h:outputLabel value="Net Total :" ></h:outputLabel>
                                        <h:outputLabel value="#{inwardSearch.bill.netTotal}" ></h:outputLabel>
                                    </p:panelGrid>
                                </p:panel>
                            </p:panelGrid>

                            <p:dataTable rowIndexVar="rowIndex"
                                         editable="true"
                                         value="#{inwardSearch.billFees}" var="bip" >    
                                <p:ajax event="rowEdit" listener="#{billSearch.onEdit}" />  
                                <p:ajax event="rowEditCancel" listener="#{billSearch.onEdit}" /> 
                                <p:column>
                                    <f:facet name="header">No</f:facet>
                                    <h:outputLabel value="#{rowIndex+1}"/>
                                </p:column>
                                <p:column>
                                    <f:facet name="header">Item</f:facet>
                                    <h:outputLabel value="#{bip.billItem.item.name}"/>
                                </p:column>
                                <p:column headerText="Returned">
                                    <h:outputLabel  rendered="#{bip.billItem.refunded}" value="Returned" style="color: red;"/>
                                </p:column>  
                                <p:column>
                                    <f:facet name="header">Fee</f:facet>
                                    <h:outputLabel value="#{bip.feeValue}"/>
                                </p:column>  
                                <p:column>
                                    <f:facet name="header">Fee Name</f:facet>
                                    <h:outputLabel value="#{bip.fee.name}"/>
                                </p:column> 
                                <p:column>
                                    <f:facet name="header">Speciality</f:facet>
                                    <h:outputLabel value="#{bip.fee.speciality.name}"/>
                                </p:column> 
                                <p:column headerText="Payee">
                                    <p:cellEditor>  
                                        <f:facet name="output"> 
                                            <h:outputLabel value="#{bip.staff.person.name}"  ></h:outputLabel>
                                        </f:facet>  
                                        <f:facet name="input">  
                                            <p:selectOneMenu value="#{bip.staff}" rendered="#{bip.fee.speciality!=null}" disabled="#{bip.paidValue!=0 or !webUserController.hasPrivilege('ChangeProfessionalFee')}" >
                                                <f:selectItem itemLabel="Select Staff" />
                                                <f:selectItems  value="#{staffController.getSpecialityStaff(bip.fee.speciality)}" var="bifs" itemLabel="#{bifs.person.name}" itemValue="#{bifs}" />
                                            </p:selectOneMenu>
                                        </f:facet>  
                                    </p:cellEditor>  

                                </p:column>
                                <p:column style="width:6%">  
                                    <p:rowEditor > 
                                    </p:rowEditor>
                                </p:column>                               
                            </p:dataTable>
                        </p:panel>


                    </p:panel>

                    <p:panel>

                        <div class="nonPrintBlock">
                            <p:commandButton value="Reprint" ajax="false" action="#"  >
                                <p:printer target="gpBillPreview" ></p:printer>
                            </p:commandButton>
                            <p:commandButton value="Reprint(Cancel/Refund)" ajax="false" action="#" rendered="#{inwardSearch.bill.refundBills.size()>0 or inwardSearch.bill.cancelled}" >
                                <p:printer target="gpBillPreview2" ></p:printer>
                            </p:commandButton>
                        </div>

                        <p:panel id="gpBillPreview" >


                            <h:panelGroup rendered="#{sessionController.currentPreference.printLabelForOPdBill eq false and sessionController.currentPreference.applicationInstitution eq 'Ruhuna'}">
                                <ui:repeat value="#{inwardSearch.bill}" var="bill">
                                    <bill:inwardBillPrintPos bill="#{bill}" duplicate="false"/>
                                </ui:repeat>
                            </h:panelGroup>

                            

                            <h:panelGroup rendered="#{sessionController.currentPreference.printLabelForOPdBill eq false and sessionController.currentPreference.applicationInstitution ne 'Ruhuna'}">
                                <ui:repeat value="#{inwardSearch.bill}" var="bill">
                                    <bill:inwardBillPrintRuhunu bill="#{bill}" dup="false"/>
                                </ui:repeat>
                            </h:panelGroup>

                            <h:panelGroup rendered="#{sessionController.currentPreference.printLabelForOPdBill eq true}">
                                <ui:repeat value="#{inwardSearch.bill}" var="b">
                                    <bill:inwardBillPrintFiveFive bill="#{b}" dup="false"/>                        
                                </ui:repeat>  
                            </h:panelGroup>
                        </p:panel>
                        <p:panel id="gpBillPreview2">
                            <h:panelGroup rendered="#{sessionController.currentPreference.printLabelForOPdBill eq false and sessionController.currentPreference.applicationInstitution eq 'Ruhuna'}">
                                <ui:repeat value="#{inwardSearch.bill.refundBills}" var="bill" rendered="#{!inwardSearch.bill.cancelled}">
                                    <bill:inwardBillPrintPos bill="#{bill}" duplicate="false"/>
                                </ui:repeat>
                                <ui:repeat value="#{inwardSearch.bill.cancelledBill}" var="bill" rendered="#{inwardSearch.bill.cancelled}">
                                    <bill:inwardBillPrintPos bill="#{bill}" duplicate="false"/>
                                </ui:repeat>
                            </h:panelGroup>
                        </p:panel>
                    </p:panel>


                </h:form>
            </ui:define>



        </ui:composition>

    </h:body>
</html>
